草庐IT

Java ScriptEngine 支持的语言

全部标签

javascript - JavaScript 是上下文无关语言吗?

这篇文章howbrowserswork解释了CSS如何是上下文无关的,而HTML不是。但是JavaScript呢,JavaScript是上下文无关的吗?我正在学习CFG和形式证明,但离理解如何解决这个问题还有很长的路要走。有谁知道JavaScript是否是上下文无关的? 最佳答案 不,JavaScript不是上下文无关语言。非常接近1,ECMAScript5规范确实做到了useacontext-freegrammar1描述语言的语法(您可以在AnnexA中找到所有产品)。当然,它确实对纯上下文无关语法产生式做了一些扩展,并描述了解析

javascript - 有什么方法可以使用 React-Intl 访问当前语言环境吗?

我想知道是否有任何方法可以使用React-Intl访问当前设置的语言环境?假设我创建了这个:render(){return();}在App中,我想做这样的事情,以访问我传递给IntlProvider的语言环境this.props.locale有什么办法可以做到这一点吗?谢谢。 最佳答案 新答案——使用钩子(Hook)(原文见下文)import{useIntl}from'react-intl';constMyComponent:FC=()=>{constintl=useIntl()return{`Currentlocale:${int

javascript - 获取 Chrome 的当前语言环境

我正在使用此API确定浏览器的当前语言环境:varlanguage=window.navigator.userLanguage||window.navigator.language;这在IE中返回"fr-FR",但在Chrome中它只返回"fr"(对于其他语言环境也是如此)。在Chrome中是否还有另一个API会返回"fr-FR"?我们依靠它来加载适当的文化文件。 最佳答案 更新:截至2021年9月,Chrome对Intl库提供了相当广泛的支持。functiongetClientLocale(){if(typeofIntl!=='u

javascript - 对象不支持属性或方法 'entries'

我正在使用FormData对象,虽然我的代码在Chrome上运行良好,但MicrosoftEdge吐出以下错误消息Objectdoesn'tsupportpropertyormethod'entries'–对应于以下代码:for(letpairofformData.entries()){...}我已尝试将.entries()替换为.getAll(),但是MicrosoftEdge无法识别这两种方法。有没有办法从MicrosoftEdge中获取此功能(遍历FormData文件)?FormDataMicrosoftEdge控制台转储 最佳答案

javascript - 是否有任何用于解析/自动完成领域特定语言的 javascript 框架?

我有一个领域特定语言的语法,我需要为该语言创建一个javascript代码编辑器。有什么工具可以让我生成a)一个javascript增量解析器b)javascript自动完成/自动建议引擎?谢谢! 最佳答案 实现内容辅助的示例(自动完成)使用ChevrotainJavascript解析DSL:https://github.com/SAP/chevrotain/tree/master/examples/parser/content_assistChevrotain专门用于构建在编辑器/IDE中使用(作为一部分)语言服务工具的​​解析器

javascript - 如何在没有评估的情况下检测异步功能支持?

这是检测当前引擎是否支持异步函数的一种方法:constsupportsAsyncFunctions=(()=>{try{newFunction('async()=>{}')();}catch(error){returnfalse;}returntrue;})();但是有没有办法不使用eval或Function来做到这一点? 最佳答案 建议的eval方法将对CSP错误给出漏报,因为它们未被处理。如果这是一个问题,可以按thisanswer中所示处理CSP错误。.可以这样做,但解决方案一点也不漂亮,并且涉及外部脚本。脚本可以设置标志,或

javascript - JavaScript 方法/属性的浏览器兼容性/支持表

按照目前的情况,这个问题不适合我们的问答形式。我们希望答案得到事实、引用或专业知识的支持,但这个问题可能会引发辩论、争论、投票或扩展讨论。如果您觉得这个问题可以改进并可能重新打开,visitthehelpcenter指导。关闭9年前。几天前我发现了一个不错的网站,它有一张大table,上面有所有javascript属性/方法,并且适用于所有主要浏览器。我的问题是我再也找不到那个网站了。我在哪里可以找到这样的列表?更新:当然,我以前搜索过历史记录和谷歌。无论如何,这是我正在寻找的网站,以防有人感兴趣:https://kangax.github.io/compat-table/es5/

Javascript 检查 IE8 中的 native 占位符支持

长话短说:为什么在IE8中('placeholder'ininputElemnt)等于true尽管不支持placeholder属性?(元素中的属性)不是检查native支持的好方法吗?Javascript库Modernizer使用它。长:我有一个名为Defaultvalue(http://unwrongest.com/projects/defaultvalue/)的小型Jquery插件。我有一个名为Placeholder(https://github.com/janjarfalk/jquery.placeholder.js)的小型Jquery插件。它基本上是HTML5占位符属性的后备。

javascript - Visual Studio 2017 是否支持 _references.js 文件?

我的JavaScriptIntellisense在VisualStudio2017中损坏。我知道我的_references.js文件是正确的,因为JSIntellisense在VS2015中工作正常。非常感谢任何帮助! 最佳答案 您不再需要_references.js文件。VS2017中的IntelliSense的工作方式与以前略有不同。您是在尝试使用特定的库还是只是从您自己的代码中获取IntelliSense?如果它是一个库,它需要有一个.d.ts文件。如果是您自己的代码,则可能取决于您是否使用模块系统。您可以在此处阅读有关其工作

javascript - 在没有 jQuery 或 Modernizr 等框架的情况下检测对 transitionend 事件支持的简单方法?

有没有人找到一种简单的方法来检测浏览器是否支持vanillaJs中的transitionend事件,尤其是在所有主流浏览器中都有效的方法?:(我在这里找到了这个未答复的线程:TestfortransitionendeventsupportinFirefox,以及相当多的几乎可以工作的技巧。现在我正在向所有vendor前缀批量添加事件监听器,并且它有点奏效(尽管我认为这是一种可怕的方法,每次看它都会伤害我的眼睛)。但是IE8和IE9根本不支持,所以我需要检测这两个,并分别对待。我更愿意在没有浏览器嗅探的情况下执行此操作,并且绝对没有像jQuery这样的大型库/框架我制作了一个jsfidd